<?php

    if (! defined('SIMPLE_TEST')) {
        define('SIMPLE_TEST', '../simpletest/');
    }
    require_once(SIMPLE_TEST . 'autorun.php');

    include '../Include/Include.php';


class ClienteAcualizarLogicaTest extends UnitTestCase {

    public function ClienteAcualizarLogicaTest() {
        $this->UnitTestCase();
    }

    public function testhacer() {
        $DBConn = null;
        $conexion = new conexion();
        $DBConn = $conexion->setConnect();
        $DBConn->consulta( "INSERT INTO cliente VALUES (-1, -1,
                            'Prueba Nombre', 'Prueba Apellido',
                            'Prueba Direccion', '0444-444-44-44',
                            'Prueba@gmail.com', 1, 1);" );

        $cliente = new Cliente( -1 , 123, 'Prueba Nombre Update', 'Prueba Apellido Update',
                'Prueba Direccion Update', '0555-555-55-55', 'PruebaEmailUpdate@gmail.com',
                1);

        $clienteActualizarLogicaTest = new ClienteAcualizarLogica($cliente);
        $respuesta = $clienteActualizarLogicaTest->hacer();

        $this->assertTrue($respuesta);

        $DBConn->consulta( "SELECT * FROM cliente
                           WHERE CLT_ID = -1
                           AND CLT_STATUS = 1" );

        $fila = $DBConn->extraer_registro();
        $this->assertEqual( -1 , $fila['CLT_ID'] );
        $this->assertEqual( 123 , $fila['CLT_RAZON_SOCIAL'] );
        $this->assertEqual( 'Prueba Nombre Update' , $fila['CLT_NOMBRE'] );
        $this->assertEqual( 'Prueba Apellido Update' , $fila['CLT_APELLIDO'] );
        $this->assertEqual( 'Prueba Direccion Update' , $fila['CLT_DIRECCION'] );
        $this->assertEqual( '0555-555-55-55' , $fila['CLT_TELEFONO'] );
        $this->assertEqual( 'PruebaEmailUpdate@gmail.com' , $fila['CLT_EMAIL'] );
        $this->assertEqual( 1 , $fila['CLT_USR_ID'] );

        $DBConn->consulta( "INSERT INTO cliente VALUES (-2, 1111,
                            'Prueba Nombre', 'Prueba Apellido',
                            'Prueba Direccion', '0444-444-44-44',
                            'Prueba@gmail.com', 1, 1);" );

        $cliente = new Cliente( -1 , 1111, 'Prueba2', 'Prueba Nombre Update2',
                'Prueba Direccion Update2', '0666-666-66-66', 'PruebalUpdate2@gmail.com',
                1);

        $clienteActualizarLogicaTest = new ClienteAcualizarLogica($cliente);
        $respuesta = $clienteActualizarLogicaTest->hacer();

        $this->assertFalse($respuesta);
        $DBConn->consulta("DELETE FROM cliente
                          WHERE CLT_ID = -1" );

        $DBConn->consulta("DELETE FROM cliente
                          WHERE CLT_ID = -2" );
    }
}

?>
